You can interact with this notebook online: Launch notebook

Quickstart for TARDIS

Every simulation run requires atomic data and a configuration file.

Atomic Data

We recommend using the kurucz_cd23_chianti_H_He.h5 dataset.

[1]:
from tardis.io.atom_data import download_atom_data
[2]:
download_atom_data('kurucz_cd23_chianti_H_He')
Atomic Data kurucz_cd23_chianti_H_He already exists in /home/runner/Downloads/tardis-data/kurucz_cd23_chianti_H_He.h5. Will not download - override with force_download=True.

You can also obtain a copy of the atomic data from the tardis-regression-data repository.

Example Configuration File

The configuration file tardis_example.yml is used throughout this Quickstart.

[3]:
!wget -q -nc https://raw.githubusercontent.com/tardis-sn/tardis/master/docs/tardis_example.yml
[4]:
!cat tardis_example.yml
# Example YAML configuration for TARDIS
tardis_config_version: v1.0

supernova:
  luminosity_requested: 9.44 log_lsun
  time_explosion: 13 day

atom_data: kurucz_cd23_chianti_H_He.h5

model:
  structure:
    type: specific
    velocity:
      start: 1.1e4 km/s
      stop: 20000 km/s
      num: 20
    density:
      type: branch85_w7

  abundances:
    type: uniform
    O: 0.19
    Mg: 0.03
    Si: 0.52
    S: 0.19
    Ar: 0.04
    Ca: 0.03

plasma:
  disable_electron_scattering: no
  ionization: lte
  excitation: lte
  radiative_rates_type: dilute-blackbody
  line_interaction_type: macroatom

montecarlo:
  seed: 23111963
  no_of_packets: 4.0e+4
  iterations: 20
  nthreads: 1

  last_no_of_packets: 1.e+5
  no_of_virtual_packets: 10

  convergence_strategy:
    type: damped
    damping_constant: 1.0
    threshold: 0.05
    fraction: 0.8
    hold_iterations: 3
    t_inner:
      damping_constant: 0.5

spectrum:
  start: 500 angstrom
  stop: 20000 angstrom
  num: 10000

Running the Simulation

To run the simulation, import the run_tardis function and create the sim object.

[5]:
from tardis import run_tardis

Note:

Get more information about the progress bars, logging configuration, and convergence plots.

[6]:
sim = run_tardis("tardis_example.yml",
                 virtual_packet_logging=True,
                 show_convergence_plots=True,
                 export_convergence_plots=True,
                 log_level="INFO")
tardis.io.model.parse_atom_data [INFO]
        Reading Atomic Data from kurucz_cd23_chianti_H_He.h5 (parse_atom_data.py:40)
tardis.io.atom_data.util [INFO]
        Atom Data kurucz_cd23_chianti_H_He.h5 not found in local path.
        Exists in TARDIS Data repo /home/runner/Downloads/tardis-data/kurucz_cd23_chianti_H_He.h5 (util.py:34)
tardis.io.atom_data.base [INFO] Reading Atom Data with: UUID = 6f7b09e887a311e7a06b246e96350010 MD5  = 864f1753714343c41f99cb065710cace  (base.py:258)
tardis.io.atom_data.base [INFO] Non provided Atomic Data: synpp_refs, photoionization_data, yg_data, two_photon_data, linelist_atoms, linelist_molecules (base.py:262)
tardis.io.model.parse_density_configuration [WARNING] Number of density points larger than number of shells. Assuming inner point irrelevant (parse_density_configuration.py:114)
tardis.model.matter.decay [INFO] Decaying abundances for 1123200.0 seconds (decay.py:101)
tardis.simulation.base [INFO]
        Starting iteration 1 of 20 (base.py:444)
py.warnings [WARNING] /home/runner/work/tardis/tardis/tardis/transport/montecarlo/montecarlo_main_loop.py:123: NumbaTypeSafetyWarning:

unsafe cast from uint64 to int64. Precision may be lost.

 (warnings.py:112)
tardis.simulation.base [INFO]
        Luminosity emitted   = 7.940e+42 erg / s
        Luminosity absorbed  = 2.660e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w   next_w
        0         9.93e+03 K  1.01e+04 K   0.4   0.507
        5         9.85e+03 K  1.02e+04 K 0.211   0.197
        10        9.78e+03 K  1.01e+04 K 0.143   0.117
        15        9.71e+03 K  9.88e+03 K 0.105  0.0868
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 9933.952 K
        Expected t_inner for next iteration = 10703.881 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 2 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.072e+43 erg / s
        Luminosity absorbed  = 3.571e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.01e+04 K  1.08e+04 K  0.507   0.527
        5         1.02e+04 K   1.1e+04 K  0.197   0.201
        10        1.01e+04 K  1.08e+04 K  0.117   0.124
        15        9.88e+03 K  1.05e+04 K 0.0868  0.0934
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10703.881 K
        Expected t_inner for next iteration = 10672.215 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 3 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.073e+43 erg / s
        Luminosity absorbed  = 3.395e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 1/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.08e+04 K   1.1e+04 K  0.527  0.485
        5          1.1e+04 K  1.12e+04 K  0.201  0.189
        10        1.08e+04 K  1.09e+04 K  0.124  0.118
        15        1.05e+04 K  1.06e+04 K 0.0934  0.088
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10672.215 K
        Expected t_inner for next iteration = 10637.379 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 4 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.059e+43 erg / s
        Luminosity absorbed  = 3.356e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 2/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w   next_w
        0          1.1e+04 K   1.1e+04 K 0.485   0.474
        5         1.12e+04 K  1.12e+04 K 0.189   0.182
        10        1.09e+04 K  1.11e+04 K 0.118   0.113
        15        1.06e+04 K  1.07e+04 K 0.088  0.0852
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10637.379 K
        Expected t_inner for next iteration = 10638.692 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 5 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.056e+43 erg / s
        Luminosity absorbed  = 3.389e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 3/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0          1.1e+04 K   1.1e+04 K  0.474   0.481
        5         1.12e+04 K  1.13e+04 K  0.182   0.179
        10        1.11e+04 K   1.1e+04 K  0.113   0.114
        15        1.07e+04 K  1.07e+04 K 0.0852  0.0844
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10638.692 K
        Expected t_inner for next iteration = 10647.667 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 6 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.061e+43 erg / s
        Luminosity absorbed  = 3.391e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 4/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0          1.1e+04 K  1.11e+04 K  0.481   0.469
        5         1.13e+04 K  1.12e+04 K  0.179   0.184
        10         1.1e+04 K   1.1e+04 K  0.114   0.115
        15        1.07e+04 K  1.06e+04 K 0.0844  0.0866
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10647.667 K
        Expected t_inner for next iteration = 10644.519 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 7 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.059e+43 erg / s
        Luminosity absorbed  = 3.388e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 5/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K  1.11e+04 K  0.469   0.466
        5         1.12e+04 K  1.14e+04 K  0.184   0.171
        10         1.1e+04 K  1.11e+04 K  0.115    0.11
        15        1.06e+04 K  1.07e+04 K 0.0866  0.0854
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10644.519 K
        Expected t_inner for next iteration = 10644.372 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 8 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.062e+43 erg / s
        Luminosity absorbed  = 3.363e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 6/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K  1.11e+04 K  0.466   0.469
        5         1.14e+04 K  1.14e+04 K  0.171   0.176
        10        1.11e+04 K  1.11e+04 K   0.11   0.111
        15        1.07e+04 K  1.07e+04 K 0.0854  0.0847
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10644.372 K
        Expected t_inner for next iteration = 10638.593 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 9 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.052e+43 erg / s
        Luminosity absorbed  = 3.425e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 7/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K  1.11e+04 K  0.469   0.467
        5         1.14e+04 K  1.15e+04 K  0.176    0.17
        10        1.11e+04 K  1.11e+04 K  0.111    0.11
        15        1.07e+04 K  1.08e+04 K 0.0847  0.0816
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10638.593 K
        Expected t_inner for next iteration = 10657.551 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 10 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.070e+43 erg / s
        Luminosity absorbed  = 3.351e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 8/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K   1.1e+04 K  0.467   0.473
        5         1.15e+04 K  1.13e+04 K   0.17   0.179
        10        1.11e+04 K  1.11e+04 K   0.11   0.113
        15        1.08e+04 K  1.06e+04 K 0.0816  0.0873
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10657.551 K
        Expected t_inner for next iteration = 10631.142 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 11 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.054e+43 erg / s
        Luminosity absorbed  = 3.371e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 9/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0          1.1e+04 K   1.1e+04 K  0.473   0.475
        5         1.13e+04 K  1.13e+04 K  0.179   0.179
        10        1.11e+04 K   1.1e+04 K  0.113   0.114
        15        1.06e+04 K  1.07e+04 K 0.0873  0.0842
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10631.142 K
        Expected t_inner for next iteration = 10645.027 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 12 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.056e+43 erg / s
        Luminosity absorbed  = 3.417e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 10/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0          1.1e+04 K  1.11e+04 K  0.475   0.462
        5         1.13e+04 K  1.13e+04 K  0.179   0.177
        10         1.1e+04 K  1.11e+04 K  0.114   0.109
        15        1.07e+04 K  1.08e+04 K 0.0842  0.0829
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10645.027 K
        Expected t_inner for next iteration = 10652.245 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 13 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.062e+43 erg / s
        Luminosity absorbed  = 3.398e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 11/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K  1.11e+04 K  0.462   0.467
        5         1.13e+04 K  1.13e+04 K  0.177   0.178
        10        1.11e+04 K  1.11e+04 K  0.109   0.111
        15        1.08e+04 K  1.07e+04 K 0.0829  0.0847
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10652.245 K
        Expected t_inner for next iteration = 10645.555 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 14 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.060e+43 erg / s
        Luminosity absorbed  = 3.383e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 12/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K  1.11e+04 K  0.467   0.469
        5         1.13e+04 K  1.13e+04 K  0.178   0.183
        10        1.11e+04 K   1.1e+04 K  0.111   0.115
        15        1.07e+04 K  1.06e+04 K 0.0847  0.0868
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10645.555 K
        Expected t_inner for next iteration = 10643.346 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 15 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.058e+43 erg / s
        Luminosity absorbed  = 3.392e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 13/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K   1.1e+04 K  0.469   0.486
        5         1.13e+04 K  1.13e+04 K  0.183    0.18
        10         1.1e+04 K  1.11e+04 K  0.115   0.112
        15        1.06e+04 K  1.07e+04 K 0.0868  0.0846
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10643.346 K
        Expected t_inner for next iteration = 10646.730 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 16 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.056e+43 erg / s
        Luminosity absorbed  = 3.432e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 14/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0          1.1e+04 K   1.1e+04 K  0.486  0.482
        5         1.13e+04 K  1.14e+04 K   0.18  0.174
        10        1.11e+04 K  1.11e+04 K  0.112  0.111
        15        1.07e+04 K  1.08e+04 K 0.0846  0.082
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10646.730 K
        Expected t_inner for next iteration = 10655.832 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 17 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.065e+43 erg / s
        Luminosity absorbed  = 3.390e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 15/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w   next_w
        0          1.1e+04 K  1.11e+04 K 0.482   0.468
        5         1.14e+04 K  1.14e+04 K 0.174   0.174
        10        1.11e+04 K  1.12e+04 K 0.111   0.108
        15        1.08e+04 K  1.08e+04 K 0.082  0.0826
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10655.832 K
        Expected t_inner for next iteration = 10641.369 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 18 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.060e+43 erg / s
        Luminosity absorbed  = 3.358e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 16/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K  1.11e+04 K  0.468   0.464
        5         1.14e+04 K  1.14e+04 K  0.174   0.175
        10        1.12e+04 K  1.11e+04 K  0.108   0.112
        15        1.08e+04 K  1.07e+04 K 0.0826  0.0838
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10641.369 K
        Expected t_inner for next iteration = 10638.369 K
 (base.py:634)
tardis.simulation.base [INFO]
        Starting iteration 19 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.054e+43 erg / s
        Luminosity absorbed  = 3.404e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)
tardis.simulation.base [INFO] Iteration converged 17/4 consecutive times. (base.py:260)
tardis.simulation.base [INFO]
        Plasma stratification: (base.py:631)
tardis.simulation.base [INFO]
        Shell No.    t_rad    next_t_rad    w    next_w
        0         1.11e+04 K  1.11e+04 K  0.464  0.465
        5         1.14e+04 K  1.14e+04 K  0.175  0.171
        10        1.11e+04 K  1.11e+04 K  0.112  0.109
        15        1.07e+04 K  1.07e+04 K 0.0838  0.084
 (base.py:632)
tardis.simulation.base [INFO]
        Current t_inner = 10638.369 K
        Expected t_inner for next iteration = 10651.597 K
 (base.py:634)
tardis.simulation.base [INFO]
        Simulation finished in 19 iterations
        Simulation took 66.26 s
 (base.py:542)
tardis.simulation.base [INFO]
        Starting iteration 20 of 20 (base.py:444)
tardis.simulation.base [INFO]
        Luminosity emitted   = 1.061e+43 erg / s
        Luminosity absorbed  = 3.401e+42 erg / s
        Luminosity requested = 1.059e+43 erg / s
 (base.py:639)

Plotting the Spectrum

Finally, plot the generated spectrum with matplotlib.

[7]:
import matplotlib.pyplot as plt
[8]:
spectrum = sim.spectrum_solver.spectrum_real_packets
spectrum_virtual = sim.spectrum_solver.spectrum_virtual_packets
spectrum_integrated = sim.spectrum_solver.spectrum_integrated
py.warnings [WARNING] /home/runner/work/tardis/tardis/tardis/spectrum/formal_integral.py:398: UserWarning:

The number of interpolate_shells was not specified. The value was set to 80.

 (warnings.py:112)
[9]:
%matplotlib inline
plt.figure(figsize=(10, 6.5))

spectrum.plot(label="Normal packets")
spectrum_virtual.plot(label="Virtual packets")
spectrum_integrated.plot(label='Formal integral')

plt.xlim(500, 9000)
plt.title("TARDIS example model spectrum")
plt.xlabel("Wavelength [$\AA$]")
plt.ylabel("Luminosity density [erg/s/$\AA$]")
plt.legend()
plt.show()
py.warnings [WARNING] <>:10: SyntaxWarning:

invalid escape sequence '\A'

 (warnings.py:112)
py.warnings [WARNING] <>:11: SyntaxWarning:

invalid escape sequence '\A'

 (warnings.py:112)
py.warnings [WARNING] <>:10: SyntaxWarning:

invalid escape sequence '\A'

 (warnings.py:112)
py.warnings [WARNING] <>:11: SyntaxWarning:

invalid escape sequence '\A'

 (warnings.py:112)
py.warnings [WARNING] /tmp/ipykernel_4727/3606673508.py:10: SyntaxWarning:

invalid escape sequence '\A'

 (warnings.py:112)
py.warnings [WARNING] /tmp/ipykernel_4727/3606673508.py:11: SyntaxWarning:

invalid escape sequence '\A'

 (warnings.py:112)
_images/quickstart_15_1.svg
[ ]: